package com.bdmc.report.domain;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.bdmc.common.core.domain.BaseEntity;

import org.springframework.format.annotation.DateTimeFormat;;
import java.time.LocalDateTime;
import com.fasterxml.jackson.annotation.JsonFormat;

/**
 * 人员考勤对象 report_check_work
 *
 * @author bdmc
 * @date 2022-03-11
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("report_check_work")
public class ReportCheckWork extends BaseEntity {

    private static final long serialVersionUID=1L;

    /**
     * 排班考勤
     */
    @TableId(value = "check_work_id")
    private Long checkWorkId;
    /**
     * 日期
     */
    private String effectDate;
    /**
     * 计划详情id
     */
    private Long planDetailId;
    /**
     * 排班计划id
     */
    private Long workPlanId;
    /**
     * 工作组id
     */
    private Long workTeamId;
    /**
     * 人员id
     */
    private Long personId;
    /**
     * 设备id
     */
    private Long deviceId;
    /**
     * 车辆id
     */
    private Long carId;
    /**
     * 围栏id
     */
    private Long fenceId;
    /**
     * 工作计划类型
     */
    private String workPlanType;
    /**
     * 班组开始时间
     */
    private String startSpan;
    /**
     * 班组结束时间
     */
    private String endSpan;
    /**
     * 工作状态0，未上班，1，已上班，2，已下班
     */
    private Integer workState;
    /**
     * 实际上班时间
     */
    private LocalDateTime startWorkTime;
    /**
     * 实际下班时间
     */
    private LocalDateTime endWorkTime;
    /**
     * 实际上班维度
     */
    private String startWorkLat;
    /**
     * 实际上班经度
     */
    private String startWorkLng;
    /**
     * 实际下班维度
     */
    private String endWorkLat;
    /**
     * 实际下班精度
     */
    private String endWorkLng;

    /**
     * 缺勤原因
     */
    private String absenceReason;
}
